;;;This command is specifically to adjust attribute positions in existing instances of the Annotation Template (map data block) "ACMAP_ANN_TEMPLATE_Parcel Label"
;;;The original construction has background masks and was spaced too closely.  When parentheses or similar characters protrude above or below the
;;;normal characters the background masking covered parts of the atttribute values above and below it
;;;There are two text entities in the block that were repositioned using the block editor which changed their positions in all instances.
;;;This command was necessary to move the attributes in all existing instances.
;;;There is one attribute tagged "PHYSADDRES" which was kept in place while the others were moved away from it (nothing was done with it at all).
(defun c:bookpagenos ( / annblkss thisviewtwist polangle thisblk thisent cnt)
  (SETQ annblkss (SSGET "X" '((2 . "ACMAP_ANN_TEMPLATE_Parcel Label"))))
  (IF (AND annblkss (>(SSLENGTH annblkss)0))
    (PROGN
;;;      (SETQ thisviewtwist (GETVAR "viewtwist")
;;;            polangle (- 0 (* PI 1.0) thisviewtwist)
;;;      )
      (SETQ cnt 0)
      (WHILE (< cnt (SSLENGTH annblkss))
        (SETQ thisblk (ENTGET (SSNAME annblkss cnt))
              thisent thisblk
        )
        (WHILE (/= (CDR (ASSOC 0 thisent)) "SEQEND")
          (IF (ASSOC 50 thisent)
            (SETQ polangle (+(CDR(ASSOC 50 thisent))(* PI 1.5)))
            (SETQ polangle NIL)
          )
          (COND
            ((AND
               (EQ (CDR (ASSOC 0 thisent)) "ATTRIB")
               (EQ (CDR (ASSOC 2 thisent)) "OWNNAME")
             )
             (SETQ thisent
                    (SUBST (CONS 10 (POLAR (CDR (ASSOC 10 thisent)) (+ PI polangle) (*(/ 5.0 32.0)(* 1.5(CDR (ASSOC 40 thisent))))))
                           (ASSOC 10 thisent)
                           thisent
                    )
             )
             (SETQ thisent
                    (SUBST (CONS 11 (POLAR (CDR (ASSOC 11 thisent)) (+ PI polangle) (*(/ 5.0 32.0)(* 1.5(CDR (ASSOC 40 thisent))))))
                           (ASSOC 11 thisent)
                           thisent
                    )
             )
             (ENTMOD thisent)
             (ENTUPD (CDR (ASSOC -1 thisent)))
            )
            ((AND
               (EQ (CDR (ASSOC 0 thisent)) "ATTRIB")
               (EQ (CDR (ASSOC 2 thisent)) "DBOOK")
             )
             (SETQ thisent
                    (SUBST (CONS 10 (POLAR (CDR (ASSOC 10 thisent)) polangle (*(/ 5.0 32.0)(* 1.5(CDR (ASSOC 40 thisent))))))
                           (ASSOC 10 thisent)
                           thisent
                    )
             )
             (SETQ thisent
                    (SUBST (CONS 11 (POLAR (CDR (ASSOC 11 thisent)) polangle (*(/ 5.0 32.0)(* 1.5(CDR (ASSOC 40 thisent))))))
                           (ASSOC 11 thisent)
                           thisent
                    )
             )
             (ENTMOD thisent)
             (ENTUPD (CDR (ASSOC -1 thisent)))
            )
            ((AND
               (EQ (CDR (ASSOC 0 thisent)) "ATTRIB")
               (EQ (CDR (ASSOC 2 thisent)) "DPAGE")
             )
             (SETQ thisent
                    (SUBST (CONS 10 (POLAR (CDR (ASSOC 10 thisent)) polangle (*(/ 10.0 32.0)(* 1.5(CDR (ASSOC 40 thisent))))))
                           (ASSOC 10 thisent)
                           thisent
                    )
             )
             (SETQ thisent
                    (SUBST (CONS 11 (POLAR (CDR (ASSOC 11 thisent)) polangle (*(/ 10.0 32.0)(* 1.5(CDR (ASSOC 40 thisent))))))
                           (ASSOC 11 thisent)
                           thisent
                    )
             )
             (ENTMOD thisent)
             (ENTUPD (CDR (ASSOC -1 thisent)))
            )
          )
          (SETQ thisent (ENTGET (ENTNEXT (CDR (ASSOC -1 thisent)))))
        )
        (ENTUPD (CDR (ASSOC -1 thisblk)))
        (SETQ cnt (1+ cnt))
      )
    )
  )
)